import sys
import cv2
import os
import numpy as np
import matplotlib.pyplot as plt


# 使用cv2显示图像
def cv2ShowImg(title, image):
    cv2.imshow(title, image)
    cv2.waitKey()
    cv2.destroyAllWindows()


# 使用Matplotlib显示图像
def matplotlibShowImg(title,image):
    plt.title(title)
    plt.imshow(image,interpolation='bicubic')
    plt.xticks([]),plt.yticks([]) # 隐藏坐标轴刻度
    plt.show()


if len(sys.argv) <= 1:
    exit(-1)

# sys.argv 在parameters中设置，此处显示的文件都是在其中设置的cet_img.png
filename = sys.argv[1]
# imread (X,X) 第二个参数为文件读取参数，取值如下
# IMREAD_GRAYSCALE = 0,    // 8 位，灰度
# IMREAD_COLOR = 1,           // 未改变深度、颜色
# IMREAD_ANYDEPTH = 2,     // 任意深度，未改变颜色
# IMREAD_ANYCOLOR = 4,    // 未改变深度，任意颜色
# IMREAD_LOAD_GDAL = 8   //  用GDAL驱动打开

image = cv2.imread(filename, cv2.IMREAD_COLOR)
# image = image[:, :, ::-1]

# opencv3中使用imread来读取含有中文的文件名的文件会报错，所以使用imdecode来读取
# image = cv2.imdecode(np.fromfile(filename, dtype=np.uint8), cv2.IMREAD_COLOR)

title = os.path.basename(filename)

# cv2ShowImg(title, image)
matplotlibShowImg(title,image)
